package cn.hou.java.designpattern._16cor;

import java.util.Iterator;
import java.util.List;
//模拟迭代器
public class MyList {
	//引用迭代接口
	private Iterator Iterator;
	private int index;//当前指针
	//数据结构
	private List list;
	//获取内部类迭代对象,进行迭代
	public Ite Iterator(){
		return new Ite();//可再写一个内部类,实现另一套迭代规则
	}
	//使用内部类实现迭代功能,包含必要的功能,也可自定义迭代规则
	//把迭代功能交给外部类,即迭代模式
	private class Ite implements Iterator{
		@Override
		public boolean hasNext() {
			if(index>=list.size()){
				return true;
			}
			return false;
		}
		@Override
		public Object next() {
			return list.get(index++);
		}}
}
